package cn.group7.padserver.service;

import cn.group7.padserver.entity.Page;
import cn.group7.padserver.pojo.Question;

import java.util.List;

/**
 * @author 谷汉斌
 * @description 问答服务接口
 * @createTime 2024/8/3 下午3:59
 */
public interface QuestionService {
    /**
     * 分页展示所有问答
     *
     * @param pageNum  页码
     * @param pageSize 每页数量
     * @return 结果
     */
    Page<Question> findPage(Integer pageNum, Integer pageSize);

    /**
     * 根据关键字分页展示问答
     *
     * @param keys     关键字
     * @param pageNum  页码
     * @param pageSize 每页数量
     * @return 结果
     */
    Page<Question> findPageByKeys(String keys, Integer pageNum, Integer pageSize);

    /**
     * 根据id查询问答
     *
     * @param id id
     * @return 问答信息
     */
    Question selectById(Integer id);

    /**
     * 添加问答
     *
     * @param question 问答信息
     * @return 是否添加成功
     */
    boolean addQuestion(Question question);

    /**
     * 根据id修改问答
     *
     * @param question 问答信息
     * @return 是否修改成功
     */
    boolean updateById(Question question);

    /**
     * 根据id删除问答
     *
     * @param id id
     * @return 是否删除成功
     */
    boolean deleteById(Integer id);

    /**
     * 根据类型查询问答
     *
     * @param kind 类型
     * @return 问答信息
     */
    List<Question> selectQuestionByKind(String kind);
}
